/**********************************************************************************
 * Copyright (c) 2012 - 2012,  quick_tools, All right reserved
 * Title: com.adc.quicktools.constants  ConstantDefine.java 
 * @author shen  shenqiao2012@163.com 
 *  2012-6-19 下午5:12:51 
 *********************************************************************************/


package com.adc.quicktools.constants;

import java.io.File;

import com.adc.quicktools.StringUtil;
import com.adc.quicktools.file.FileControl;




public class ConstantDefine {
	
	/**
	 * 定义win平台下文件名中不支持的字符数组；
	 */
	public final static String[] FILE_ERROR_LETTER=new String[]{"\\","/",":","*","?","\"","<",">","|"};

	/* 定义括号类型 */
	public final static String Bracket_Round="()";
	public final static String Bracket_Square ="[]";
	public final static String Bracket_Curly="{}";
	
	/* 从配置文件获取ftp信息的key  */
	public final static String FTP_Home_KEY="ftp.home";
	public final static String FTP_Hostname_KEY="ftp.hostname";
	public final static String FTP_Port_KEY="ftp.port";
	public final static String FTP_User_KEY="ftp.user";
	public final static String FTP_Pwd_KEY="ftp.pwd";
	
	/* 从配置文件获取samba信息的key  */
	public final static String SMB_Home_KEY="smb.home";
	public final static String SMB_Hostname_KEY="smb.hostname";
	public final static String SMB_User_KEY="smb.user";
	public final static String SMB_Pwd_KEY="smb.pwd";
	
	/* 资源文件的位置  */
	public final static String RESOURCE_ROOT="resource/";
	public final static String RESOURCE_DefaultFile="config.properties";
	
	/* 从配置文件获取deploy信息的key  */
	
//	public final static String InterfaceURL_KEY="interfaceURL";
	
//	public final static String LocalDIR_KEY="localTempDir";
	
	/* 默认的时间格式,入库时间格式 */
	public final static String TIME_FORMAT_InsertDB="yyyy/MM/dd HH:mm:ss";
	/* 默认的业务时间格式 */
	public final static String TIME_FORMAT_BusiTime="yyyyMMddHHmmss";
	/* 正则解析、匹配时间掩码的时间格式 */
	public final static String TIME_FORMAT_TimeMaskUtil="yyyy-MM-dd";
	
	
	/* 定义file type，帮助确定具体生产的产品文件名  */
	public final static String DEFAULT_TYPE="default";
	
	/* 定义ftp模式 上传  */
	public final static String FTP_UP="fup";
	/*  定义ftp模式 下载    */
	public final static String FTP_DOWN="fdown";
	/* 定义samba模式 上传  */
	public final static String SMB_UP="sup";
	/*  定义samba模式 下载    */
	public final static String SMB_DOWN="sdown";
	/*  定义http模式 下载    */
	public final static String HTTP_DOWN="hdown";
	
	/**
	 *  等待间隔  0.3秒
	 */
	public final static Long waitGap=300L;
	/**
	 *  最大等待时间：30s
	 */
	public final static Long MaxWaitTime=30*1000L;  
	
	private static String  executeRoot="";
	private static String localTempDir="";
	
	/**
	 * 
	 * Description:   获取当前文件的运行路径
	 * author:  shen  
	 * @return String
	 */
	public static String getExecuteRoot() {
		if (!StringUtil.checkStringValue(executeRoot)) {
			executeRoot=FileControl.getAppPath(ConstantDefine.class);
		}
		return executeRoot;
	}
	
	/**
	 * 
	 * Description:   获取运行的临时路径
	 * author:  shen  
	 * @return String
	 */
	public static String getLocalTempDir() {
		if (!StringUtil.checkStringValue(localTempDir)) {
			localTempDir=getExecuteRoot()+"/temp/";
		}
		localTempDir=FileControl.checkDirEndWith(new File(localTempDir).getAbsolutePath());
		return localTempDir;
	}
	
}
